Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
The acquisition, processing, and analysis of “big data,” or extremely large sets of data, have recently drawn much attention. As data acquisition speeds are becoming important to leaders in business, science, and technology fields, increasingly larger amounts of data may be collected and need to be processed. The processing of such large data sets often involves sorting the data elements within the data sets. Many sorting algorithms that are widely used in computing, such as the quicksort or partition-exchange algorithm, may involve a substantial amount of memory, memory management, and management of data collisions. Quicksort, one of the most commonly used data sorting algorithms, has been in use since 1960s.
The speed at which computers collate and organize information may no longer be limited to the amount of available random access memory (RAM) or processing power, however. Rather, the Quicksort algorithm may now be a major hindrance to improving data absorption rates, because it fails to fully utilize available memory at its disposal. If there is no additional memory available for sorting, then a comparison based sorting routine such as Quicksort may be close to optimal. However, for today and tomorrow's computers, the memory limitation may occur less frequently.